Real-time Determination of a Service Cost

ABSTRACT

This disclosure describes, in part, systems and techniques for retrieving complex data from multiple data sources corresponding to a current cost of consumable materials and a current cost of labor used to provide a service. Once retrieved, the system may determine a total current cost of the consumable materials and a total current cost of the labor. Furthermore, the system may use the total current cost of the consumable materials and the total current cost of the labor to determine an overall current cost of the service. The system may simultaneously provide an overall current cost of multiple services.

BACKGROUND

Businesses are continuously seeking ways to more efficiently operate.For instance, businesses which deliver services to a consumer strive todetermine a more reliable, efficient, secure, and/or a faster way fordetermining a real-time cost of each service. In some instances, suchservices involve complex data from numerous sources which is rapidlychanging. As such, there remains a need for a process that integratesthe complex data as it changes to allow a business to determine areal-time cost of the services the business provides.

BRIEF DESCRIPTION OF THE DRAWINGS

The detailed description is described with reference to the accompanyingfigures. In the figures, the left-most digit(s) of a reference numberidentifies the figure in which the reference number first appears. Theuse of the same reference numbers in different figures indicates similaror identical components or features.

FIG. 1 is a schematic diagram of an illustrative environment fordetermining a real-time cost of a service.

FIG. 2 is a block diagram of an illustrative computing architecture todetermine a real time cost of a service and to provide user interface todisplay information associated with the cost.

FIG. 3 illustrates an example user interface to provide cost informationon multiple services.

FIG. 4 illustrates an example user interface to cost information onmultiple services from a specific department.

FIG. 5 illustrates an example notification interface of a cost changefor a particular service.

FIG. 6 illustrates an example user interface to provide editable detailsassociated with a particular service.

FIG. 7 illustrates an example process for determining a total cost of aservice and updating a price of the service.

DETAILED DESCRIPTION

This disclosure describes, in part, systems and techniques fordetermining, in real-time, a cost associated with service. In someimplementations, the service may be described as performing a medicallaboratory test (e.g., a blood test). However, this disclosure coversother services, such as construction, parcel delivery, home repairservices, hospitality services, etc.

In some implementations, this disclosure describes a system to access orretrieve complex data from multiple data sources corresponding to acurrent cost of consumable materials and a current cost of labor used toprovide the service. Once retrieved, the system may determine a totalcurrent cost of the consumable materials and a total current cost of thelabor. Furthermore, the system may use the total current cost of theconsumable materials and the total current cost of the labor todetermine an overall current cost of the service. The system maysimultaneously provide an overall current cost of multiple services.

In some implementations, the overall current cost of the service may bepresented in a user interface to a user. In some implementation, thesystem may determine that the overall current cost of the servicediffers from a previously determined overall cost. In someimplementations, the system may present a notification as part of theuser interface to notify the user that the overall current cost of theservice exceeds the previously determined overall cost by apredetermined threshold. In addition, the system may receive input fromthe user to update a price of the service.

To illustrate, envision a user associated with a laboratory that has thecapability to perform thousands of testing services on a large quantityof time-sensitive specimens (e.g., blood sample, tissue samples, etc).In order to be able to efficiently determine and/or quickly calculate atotal current cost for each testing service, the user may need to have adetailed knowledge of the overall material costs and overall labor costsassociated with each of the testing services. However, since theseoverall material costs, overall labor cost, or other miscellaneous costsassociated with testing specimens are constantly changing due tofluctuating costs of chemicals, an amount of wasted material used tocalibrate the equipment used to provide the testing service, the staffneeded to provide the testing services, among many other cost factors,determining a real-time total current cost for each testing servicewould be extremely difficult and/or inefficient.

Furthermore, the laboratory may seek to more securely and/or morereliable present the real-time total current cost of the testingservices. As such, this disclosure describes various user interfaces toprovide information related to the material cost, labor cost, totalcurrent cost, and/or previous total cost of each of the testing servicesprovided. In some implementations, as mentioned above, the system maydetermine a cost difference between a total current cost and apreviously determined total cost. For instance, as described above, thesystem may determine that the total current cost of a testing service is$40 and a previously determined total cost is $35. As such, the systemmay determine that the difference between the total current cost and thepreviously determined cost is $5 or a percentage change of 14.28%. Insome implementations, the system may determine that the difference isgreater than a predetermined threshold. For instance, the difference maybe greater than 5%, 10%, 20% or any other difference. In someimplementation, the predetermined threshold may be different for eachtesting service offered. For instance, the predetermined threshold maybe higher where the previously determined total cost is higher or viceversa.

In some implementation, the system may present a notification, via auser interface, that the difference between the total current cost andthe previously determined cost is greater than the predeterminedthreshold. Furthermore, the system may allow a user to update a price orfee charged for a particular testing service, via the user interface,based on the total current cost or the difference between the totalcurrent cost and the previously determined cost.

The system may also allow a user to monitor an inventory of consumablematerials on hand to provide the services via a user interface. In someimplementations, the system may allow the user to purchase additionalconsumable goods and/or select a different supplier of a particularconsumable material depending on the data associated with an acquisitioncost of the consumable material.

In some implementations, the system may provide communication betweenequipment used to provide the services (e.g., laboratory testingmachines). The system may automatically activate or deactivate a testingmachine based on the total current cost and/or a number of testspreviously order over a period of time.

The techniques for determining, in real-time, a cost associated withservices and generating service cost interfaces as described herein maybe implemented in a variety of ways and by a variety of electronicdevices.

Illustrative Environment

FIG. 1 is schematic diagram of an illustrative environment 100 fordetermining, in real-time, a total cost associated with multipleservices and generating one or more user interfaces to displayinformation associated with the total cost. As illustrated, environment100 may include a service cost provider 102 which uses data sources 104to generate the total current cost. The service cost provider 102 may behosted by one or more computing devices or servers and may communicatewith other computing devices or servers via one or more networks 106.The network(s) 106 may include wireless and/or wired networks, includingmobile telephone networks, wide area networks (WANs), and so forth.

The service cost provider 102 may communicate with one or more users,which may include user 108 and the other users 110(1)-(N). User 110 mayuse a device 112 to communicate with the service cost provider 102and/or interact with the one or more user interface(s) provided by theservice cost provider 102. The device 112 may include virtually any typeof electronic device or computing device that can exchange informationwith another device. For example, the devices 112 may be any one or moreof mobile telephones, smart telephones, notebook computers, tablets,desktop computers, vehicle computing devices, kiosks, and/or other typesof electronic devices. The service cost provider 102 may provide theuser interfaces to the device 112 (or any other device) through abrowser, a dedicated application or “app”, and/or through messagingservices such as short message service (SMS), email, and other messagingservices.

In some implementations, the service cost provider 102 may utilize dataprovided by the user 108 via the one or more user interfaces and/or dataprovided by the other user 110(1)-(N) via the one or more userinterfaces to determine a total current cost of a service. In someinstances, the user 108 and the other users 110(1)-(N) may be employeesof a particular business using the service cost provider 102. In someimplementations, the service cost provider 102 may utilize data from oneor more data sources 104. As illustrated, the service cost provider 102may communicate with the data sources 104 via network(s) 106 to accessvarious types of information to determine the total current cost of aservice. For instance, the service cost provider 102 may communicatewith a data source associated with labor cost data 114, consumablematerial cost data 116, service market data 118, and/or other data 120to obtain information to determine the total current cost of a service.In some implementation, the data obtained from the data sources 104 maybe presented in the one or more user interfaces. In someimplementations, the one or more data sources 104 may include dataprovided by a third party external to the service cost provider 102. Forinstance, the data sources 104 may include data created by a third-partymaterial supplier based on a current acquisition cast of materialsassociated with the services. However, in some implementations, the dataprovided by the data sources 104 may be accessible via private datarepositories available only to the service cost provider 102. Forinstance, service cost provider 102 may store, or at least have accessto, the data associated with the data sources 104.

The labor cost data 114 may include information that is stored by, orthat is supplemental to, the service cost provider 102 about one or morelabor costs associated with each of the particular service(s) providedby a business associated with the user 108. In some implementations, thelabor cost data 114 may include a number of employees required tocomplete the service, a wage associated with each employee required tocomplete the service, a labor cost for the employee(s) performinginstrument calibrations associated with the service, a labor cost of theemployee(s) performing instrument controls, a labor cost of supervisionof the employees performing the service, and/or a labor cost ofverification of the service results, among others.

The material cost data 116 may include information that is stored by, orthat is supplemental to, the service cost provider 102 about one or morematerial costs of consumable material used to provide each of theparticular service(s) provided by a business associated with the user108. In some implementations, consumable materials for the laboratorybusiness describe above may include chemicals (acids, analyticalreagents, bases, buffers, solvents, detergents, cleansers, dyes, orother solutions), test tubes, culture tubes or media, slides, chemicaltest strips, pipettes, specimen collection/transportation products,among others. In some implementations, the material cost data 116 mayinclude an acquisition cost associated with each of the consumablematerials used in part or in whole to complete the service, a costassociated with waste of one or more consumable materials (i.e.chemicals) used in control testing or calibration of testing instrumentsor equipment, among other costs.

For instance, in some implementation, the material cost data 116 mayinclude inventory data associated with an amount of a particularconsumable material the user has in stock, whether a particularconsumable material is backordered or in short supply, and/or astability of a particular consumable material. For instance, thematerial data cost 116 may include data indicating that a consumablematerial in use will expire and/or that a consumable material in storageand not currently in use will expire on a particular day/time.

The service market data 118 may include information that is stored by,or that is supplemental to, the service cost provider 102 about theorder history for each of the particular service(s) provided by abusiness associated with the user 108. In some implementations, servicemarket data 118 may include the number of each service provided by thebusiness over a particular period of time (e.g., one week, one month,one year, or any time frame in between), a total current price of aparticular service charged by another, or an average price of aparticular service charged by another.

The other data 120 may include information that is stored by, or that issupplemental to, the service cost provider 102 about other cost detailsor other information associated with each of the particular service(s)provided by a business associated with the user 108. For instance, theother data 124 may include information associated with an instrument orequipment cost used to provide each particular service (e.g., an overallor monthly purchase cost of the instrument(s), a lease or rental cost ofthe instrument(s)).

As described in detail below, the service cost provider 102 maydetermine a total current cost of each service provided by the user 108based on the data from the data sources 104 or the data input by theuser 108 or other users 110(1)-(N). In some implementations, the servicecost provider 102 may also generate one or more user interfaces todisplay on one or more devices, such as device 112, for presentation tothe user 108. As described below, the one or more user interfaces mayinclude labor cost data, material cost data, service market data, or theother data from the data sources 104, a current total cost of aparticular service, a weekly total cost of a particular service, antotal cost of a particular service that has been approved by anadministrator, previously determined cost of a particular service or setof services, an employee associated with the particular service or setof services, a change in the current cost, a number of days since adetermination of a current total cost, among others.

Illustrative Computing Architecture

FIG. 2 shows a block diagram of an illustrative computing architecture200 for the service cost provider 102 to determine a current total costof a service and/or provide one or more tracking interfaces. Thecomputing architecture 200 may include one or more computing devices 202that may be implemented in a distributed or non-distributed computingenvironment.

The computing devices 202 may include one or more processors 204 and oneor more computer-readable media 206 that stores various modules,applications, programs, or other data. The computer-readable media 206may include instructions that, when executed by the one or moreprocessors 204, cause the processors to perform the operations describedherein for the service cost provider 102.

Implementations may be provided as a computer program product includinga non-transitory machine-readable storage medium having stored thereoninstructions (in compressed or uncompressed form) that may be used toprogram a computer (or other electronic device) to perform processes ormethods described herein. The machine-readable storage medium mayinclude, but is not limited to, hard drives, floppy diskettes, opticaldisks, CD-ROMs, DVDs, read-only memories (ROMs), random access memories(RAMs), EPROMs, EEPROMs, flash memory, magnetic or optical cards,solid-state memory devices, or other types of media/machine-readablemedia suitable for storing electronic instructions. Further, embodimentsmay also be provided as a computer program product including atransitory machine-readable signal (in compressed or uncompressed form).Examples of machine-readable signals, whether modulated using a carrieror not, include, but are not limited to, signals that a computer systemor machine hosting or running a computer program can be configured toaccess, including signals downloaded through the Internet or othernetworks. For example, distribution of software may be by an Internetdownload.

In some implementations, the computer-readable media 206 may store aservice cost module 208. The service cost module 208 may include variousmodules, such as a data acquisition module 210, a cost determinationmodule 212, a communications module 214, and an interface module 216,each of which are described in detail below. The modules may be storedtogether or in a distributed arrangement. In some implementations, themodules may represent services that may be performed using componentsthat are provided in a distributed arrangement, such as by virtualmachines running in a cloud computing environment. In someimplementations, one or more datastores may be included in the computingarchitecture 200, accessible by the computing device 202 and the servicecost module 208. The one or more datastores may include a previousservice cost datastore 218, an inventory datastore 220, and a servicedescription datastore 222

As mentioned above, the service cost module 208 may include a dataacquisition module 210. In some implementations, the data acquisitionmodule 210 may access and/or acquire data from the one or more datasources 104. For instance, the data acquisition module 210 may acquiredata associated with labor cost data 114 and material cost data 116 inorder to accurately determine the total current cost of a particularservice at any point in time.

The service cost module 208 may include a cost determination module 212.The cost determination module 212 may process the data acquired by thedata acquisition module 210 to calculate a total current cost of one ormore services provided by a business of the user. As described above,the cost determination module 212 may determine a total current cost ofa service by determining a total current cost of labor needed tocurrently provide a service, a total current cost of consumablematerials needed to currently provide the service, and other cost datawhich may affect the current cost of the service.

In some implementations, the cost determination module 212 may determinethe total current cost of labor based at least in part on an amount oftime to complete a number of the services over a predetermined time,divided by the number of the services completed over the predeterminedtime.

In some implementations, the cost determination module 212 may determinethe total current cost of a service by calculating the total cost ofmaterials (e.g., material used in calibration, control, and performingthe service) and calculating the total cost of labor (labor inperforming the calibration, control, and performing the service) over apredetermined period of time (e.g., one day, one week, two weeks, onemonth, etc). The total cost of the materials and the total cost of laborfor the particular service over the period of time is added together andthen may be divided by the total number services performed during thepredetermined period of time.

The service cost module 208 may include a communications module 214. Insome implementations, the communications module 214 may allow user 108of the service cost module 208 to communicate with the one or more datasources 104 and/or the other users 110(1)-(N) of the service costprovider 102. In some implementations, the communication from thecommunications module 214 may be communications to a supplier of aconsumable material associated with a particular service. In someimplementations, the communication from the communications module 214may be communications to an instrument or equipment used to provide theservice. For instance, the communications may be to and/or from aparticular laboratory analyzer in use to produce blood testing services.

The service cost module 208 may include an administration module 216. Insome implementations, the administration module 216 may allow aprivileged user, such as an administrator, to set parameters andguidelines for the service cost provider 102. For instance, theadministration module 216 may allow for initial data entry associatedwith the labor cost of each employee. Furthermore, the administrationmodule 216 may allow a user to specify a period (e.g., one day, twodays, one week, one month, etc.) for the data acquisition module 210 toaccess the one or more datastores 104 and/or a period for the costdetermination module 212 to determine the current total cost of aparticular service. For instance, an administrator, via a user interfaceassociated with the administration module 216, may determine that acurrent total cost of a service with more volatile material costs and/orlabor costs may be better served by a daily or weekly determination ofthe current total cost.

The administration module 216 may account for multiple levels ofpermission within the servicer cost provider 102. For instance, eachuser of the service cost provider 102 may be assigned a permission orsecurity level as either an administrator, approver, manager, or a user.In some implementations, an administrator may have permission to addservices to the service cost provider 102, update or edit existingservices, delete services, and/or approve price updates for services.While an approver may be similar to an administrator, the approver maynot have permission to delete service for the service cost provider 102.A manager and a user may differ in that the user may not be havepermission add or edit service in the service cost provider 102.However, neither the manager or the user may approve a price update forservices. In this implementation, the manager and the user must submit aprice update for approval by an administrator or an approver asdescribed below with regard to FIG. 5.

In some implementations, the service cost module 208 may utilize thedata acquired by the data acquisition module 210 and total current costdetermined by the cost determination module 212 to create one or moreuser interface(s). In some implementations, the service cost module 208may include the interface module 218 which may organize and present thedata acquired by the data acquisition module 210 and determined by thecost determination module 212 to a user, such as user 108. In someimplementations, the interface module 218 may include a cost changemodule 224.

In some implementations, the interface module 218 may allow forsimultaneous presentation of service cost information to one or moreusers on one or more devices. As described in detail below, theinterface module 218 may allow a user to view, select, alter, and/orconfigure information associated with services provided by a business oruser. In some implementations, interface module 218 may be provided inthe computer readable media 206 and may be executed on the processingunit(s) 204 to provide a user interface to assist the user 108 inoperation of service cost provider 102. The interface module 218 mayallow tactile entry of requests (e.g., via touchscreen or touchpad,etc.), textual entry of requests (e.g., via a cursor, controller,keyboard, etc.), audible entry of requests (e.g., via a microphone), orentry of requests in any other manner.

The cost change module 224 may generate and organize informationassociated with a change in the total current cost of a service. Forinstance, the cost determination module 212 may determine the currenttotal cost of a particular service at a particular time or over aparticular time frame. The cost change module 224 may access theprevious cost datastore 218 for information associated with previoustotal cost of the particular service. In some implementations, the costchange module 224 may determine a difference between the current totalcost and the previous total cost of the particular service. In someinstances, the cost change module 224 may determine that the differenceis greater than a threshold or cost variance limit (e.g., monetary orpercentage). In some implementations, the service cost provider 102 maybe set with a default cost variance limit (e.g., 1%, 3%, 5%, etc) forall services. However, as described below, the cost variance limit maybe edited by a user of the service cost provider 102. Furthermore, thecost change module 224 may organize the cost difference information forpresentation by the interface module 218 in one or more user interfaces.

In some implementations, notification module 226 may generate anotification user interface for presentation on a device associated witha user when the cost change module 224 determines that the costdifference between the current total cost and a previous total cost isgreater than a threshold (e.g., the current total price is substantiallyhigher or lower than a previous total cost of a service). As mentionedabove, the threshold amount may vary between the multiple servicesoffered by the business associated with the user. Furthermore, in someimplementations, the cost change module 224 may rank the costdifferences of multiple services based on an amount the current totalcost of each service and a previous total cost differ. In someimplementations, the notification module 226 may present the ranked costdifferences.

In some implementations, in response to the notification user interfacegenerated by the notification module 226, a user, such as anadministrator with price adjustment privileges, may elect to alter thecurrent amount charged or the actual price of a service based on thecurrent total cost of the service or determined difference between thecurrent total cost and a previous total cost. In some instance, theprice approval module 228 may receive a request to alter or update thecurrent amount charged for a particular service. The price approvalmodule 228 may determine whether the user requesting the update has theproper authority to make such or change by accessing the administrationmodule 216. If the price approval module 228 determines that the user isauthorized to make the price update, a first notification may begenerated by the price approval module 228 indicating that the priceupdate was successful. On the other hand, if the price approval module228 determines that the user is not authorized to make the price update,a second notification may be generated by the price approval module 228indicating that the price update is pending review or formal approval byan administrator.

As mentioned above, the service cost module 206 may include a previouscost datastore 218, an inventory datastore 220, and a servicedescription datastore 222. The previous cost datastore 218 may store alltotal cost determinations made by the cost determination module 212 andprovide a stored previous totals costs to the cost change module 224 asdescribed above.

The inventory datastore 220 may include data associated with consumablematerial inventory. For instance, a number of materials in stock, astock keeping unit (SKU) or other identifier of each material, alocation of the material, an expiration of the material, one or moresuppliers or vendors of the material, a material safety data sheet(MSDS) associated with the material, and a purchase history of thematerial.

The service description datastore 222 may include data associated withspecific detail of each service. For instance, the number of eachservices order or performed over a period of time, a department of thebusiness which performs the services, equipment used to perform theservice, consumable materials needed to complete the service, a currentprocedural terminology (CPT) code associated with the service, andmethodologies to perform the service.

Illustrative Tracking Interfaces

FIGS. 3-6 illustrate various example user interfaces generated by theinterface module 218 of the service cost module 208 for presentation onan electronic device, such as device 112 of the user 108. Morespecifically, the example user interfaces may be generated to displayinformation associated with a real-time cost of a service provided by abusiness as described above. In some implementations, the example userinterfaces may help users view how the service costs are determined, howoften the costs associated with the services are updated, and/or fromwhat sources material cost data and/or labor cost data is retrieved todetermine the costs of a particular service.

FIG. 3 illustrates an example user interface 300 generated by theinterface module 218 for presentation on an electronic device. Theexample interface 300 may include a location 302 of an identification ofa user currently logged into the tracking service 102. For instance,FIG. 3 shows at location 302 that user 110 is logged onto the servicecost provider 102.

Interface 300 illustrates that user 108 may select the services box 304.In some implementations, upon selection of the service box 304, theinterface module 218 may provide an indication of the selection by, forexample, highlighting box 304.

In some implementations, one or more columns and row of serviceinformation may appear within interface 300 after receiving theselection of the service box 304. As shown in FIG. 3, each row ofinformation may be highlighted in a manner that is different from thebordering rows. In some implementations, the information in the one ormore columns and rows may be acquired by the data acquisition module 210and/or determined by the cost determination module 212. The informationdisplayed on the interface 300 may include a service code to identifythe services presented on the interface 300, an average weekly cost ofeach displayed service, a current total cost of each displayed service,a most previously determined total cost of each displayed service (ifapplicable), a difference between the current total cost and thepreviously determined total cost, a date of a most recent cost review, abusiness department in which the service is performed, cost detailsassociated with the services, and/or an indication the status of a priceupdate.

In some implementations, the interface 300 may be sorted by any of theinformation presented in the one or more columns (i.e., total costdifference, price update, etc). Furthermore, as described below withreference to FIG. 4, the interface 300 may be filtered at departmentinput box 306 to display cost information for services associated with aparticular department. As shown in FIG. 3, department input box 306indicated services for “All Departments” are currently displayed oninterface 300.

As shown in FIG. 3, row 308 of interface 300 illustrates variousinformation associated with “Service 2.” For instance, the “weekly cost”of service 2 is “$23,787.93;” a “current total cost” is “$22.849;” aprevious total cost” is “$22.844;” a “total cost difference” is“0.021%;′” a “previous review” was completed “7 days” ago; a“Department” is “Dept 1;” the cost details as hyperlinks to separateinterfaces with information related to “Material Cost,” “Labor Cost,” or“other” cost details; and a status of a “price update.”

In some implementations, the “weekly cost” may be a combination of thetotal material cost and the total labor cost of a particular service forone week. In some implementations, the “weekly cost” may be from theweek immediate preceding the current week. In other implementations, the“weekly cost” may be an average weekly cost from a predetermined numberof preceding weeks. In yet another implementation, the “weekly cost” maybe a rolling weekly cost that may be updated on a daily basis to accountfor the seven days immediately preceding the current day. The “weeklycost” may be determined by the cost determination module 212 by addingthe “current total cost” based on any of the time periods describedabove.

In some implementations, the “current total cost” may be determined bythe cost determination module 212 based at least on a summation of atotal labor cost and a total material cost as described above.Furthermore, as described above, each labor cost of the total labor costand each material cost of the total material cost may be retrieved bythe data acquisition module 210 and provided to the cost determinationmodule 212. As described above, the “current total cost” may be areal-time cost to perform a single service based on the current laborcost, current material cost, or other current cost factors.

The “previous total cost” may be acquired from the previous costdatabase 218 of the service cost module 208. The “previous total cost”may be a stored cost, such as a previous “current total cost,”associated with a previous cost to perform a single service based on theprevious labor cost, previous material cost, or other previous costfactors.

As shown in FIG. 3, interface 300 shows that a “total cost difference”between the “previous total cost” and the “current total cost” hasincrease by “0.021%.” In some implementations, the “total costdifference” may be displayed in terms of financial difference in dollarsand cents.

Interface 300 may also include the “cost details” for each service code.In some implementation, the interface 300 may present hyperlinks to eachcost details associated with the service codes. For instance, uponselection of a hyperlink for “material cost,” “labor cost,” or “other”cost may present a separate user interface or a pop-up interfacedisplaying the specific details associated with the selected cost. Inother implementations, the interface 300 may include separate columnsdisplaying a breakdown of each of the “material cost,” “labor cost,” or“other” cost for each displayed service.

As described above, each of the “material cost,” “labor cost,” or“other” cost may be determined by the cost determination module 212 fromdata acquired by the data acquisition module 210 from the data sources104. As one example, the “material cost” of “service 2” may include acost of pipettes, culture media, test tubes, and/or chemicals used toperform the service. In some implementations, the “material cost” mayaccount for chemicals wasted to calibrate equipment, run controlservices, and/or perform dilutions associated with the service. Whilethe “labor cost” of “service 2” may include a specific breakdown ofcosts associated with the employee or employees performing the service.In some implementations, the “labor cost” may include a cost to accountfor a number of repeat services during a period of time where theservice, such as a testing service, results in an inconclusive orincomplete result.

Finally, the “other” cost of the “cost details” may include cost toaccount for downtime associated with instrument used to perform aparticular service, a portion of a lease cost, purchase cost, or rentalcost of one of more instrument used to perform the particular service.

As shown in FIG. 3, row 310 of interface 300 illustrates variousinformation associated with “Service 5.” For instance, the “weekly cost”of service 5 is “$13,208.698;” a “current total cost” is “$14.017.”Service 5 indicates that a previous total cost,” a “total costdifference,” and a “previous review” as “N/A.” In some implementations,this may indicate that these items are not valid for service 5 sinceservice 5 may be a new service offered by the business.

As shown in FIG. 3, row 312 and row 314 of interface 300 illustrate thatthe “total cost difference” is “−0.27%” and “15.28%” for “service 6” and“service 10,” respectively. Furthermore, as described above, the “totalcost difference” for each of “service 6” and “service 10” may exceed aspecific cost difference threshold as determined by the cost changemodule 224. Consequently, the interface module 218 may present anotification to the user to approve a new price for the service based atleast on the “total cost difference” and the “current total cost” of theservice. Furthermore, as shown in row 308, the “price update” isillustrated as “N/A” since the “total cost difference” may not exceed apredetermined threshold or a cost variation limit for service 2.

FIG. 4 illustrates an interface 400 for displaying cost information formultiple services. In some implementations, interface 400 may displaysimilar information as described above with regard to interface 300.However, in other implementations, interface 400 may include additionalinformation associated with cost of services offered by a business.

In some implementations, when a user, such as user 108, manipulates acursor, highlights, or touches an area containing the department inputbox 402, the interface module 218 may generate details for displayregarding a specifically selected department. For instance, when user108 selects or inputs “Dept 2” in the department input box 402, theinterface module 218 may filter data received from the data acquisitionmodule 210 to limit the display to services performed by department 2 ofthe business.

As shown in FIG. 4, each displayed service code on interface 400 islabeled “Dept 2.” Service 2, Service 4, Service 5, Service 6, andService 10 which were displayed on interface 300 of FIG. 3 are alsopresented on interface 400. In addition, Service 13, Service 14, Service22, Service 25, and Service 51 and their respective cost information isdisplayed on interface 400.

FIG. 4 also illustrates a total cost difference for Service 22 as anincrease of “0.088%.” In addition, interface 400 shown the price update404 as “New” as opposed to “N/A,” “Pending,” or “Approved.” In someimplementations, the price update “New” is an indication that the totalcost difference between the current total cost and the previous totalcost exceeds the cost variation limit or threshold (as determined by thecost change module 224) yet a price update or change has not beensubmitted for approval or approved by an administrator (by the priceapproval module 228). In some implementations, the indication that theprice update is “new” may cause the notification module 266 to generatea cost change notification as described with regard to FIG. 5.

FIG. 5 illustrates an example cost change notification 500 which may begenerated and presented by the notification module 226 of the costchange module 224. As mentioned above, the notification module 226 maycreate and/or present the notification 500 to a user that a total costdifference for particular service exceeds a predetermined cost variationlimit. In some implementations, the notification module 226 may includecost details in the generated notification corresponding to the currenttotal cost of a particular service and a previous total cost of theparticular service. In some instances, the notification module 226 maygenerate a notification interface to be sent via email, short messageservice (SMS) or multimedia message service (MMS) to the user device 112of the user 108 that a particular service has a total cost differenceover the cost variation limit.

As illustrated in FIG. 5, the example notification 500 may includedetails regarding the cost of service 22 as previously shown in FIG. 4.For instance, FIG. 5 shows the example notification 500 including thetotal cost difference, the current total cost, the previous total cost,and a link to the cost details (e.g., material cost, labor cost, and/orother costs). In addition, the notification 500 may display the costvariation limit 502 for service 22. As described below, the costvariation limit 502 may be a threshold amount the total cost differencemust exceed in order to notification module 226 to generate thenotification 500. Furthermore, the cost variation limit 502 may be setby a user or administrator and be unique for each service offer. Thecost variation limit 502 is shown as a percentage; however, in someimplementations, the cost variation limit may be a monetary amount.

In some implementations, the notification 500 may include a link 504 todisplay service code details. As described below with regard to FIG. 6,the service code details include any editable information associatedwith the particular service code. For instance, the service code detailwould include the cost variation limit 502. In some implementations, auser such as an administrator with certain privileges, may access aninterface associated with the service code details to edit, add, delete,update or otherwise change information associated with the particularservice code.

In some implementations, the notification 500 may include a new pricebox 506. In some implementations, the user may input a new or updatedprice to be charged by the business for service 22 based on the currenttotal price. For instance, the user may input the current total price of$235.234 in the new price box 506. In other implementations, the usermay input any new price for service 22 in new price box 506.

Notification 500 also includes a next review date box 508. Initially,the next review box 508 displays the preset timeframe (i.e., 7 Days)until the next cost review of service 22. However, next review box 508may allow a user to input a different timeframe for a cost review ofservice 22. For instance, if a cost associated with service 22 isvolatile because materials to complete service 22 are in short supply,the user may wish to set the next cost review to a shorter timeframe(e.g., from 7 Days to 2 Days).

FIG. 5 also illustrates that the notification 500 may include an areafor the user to either submit the new price and/or next review date forapproval or, if the user has administrative privileges determined by thebusiness, to approve the new price and/or next review date. In someimplementations, the price approval module 228 may receive an indicationthat either the submit box 510 or approve box 512 has been selected onthe notification 500 and instruct interface module 218 to update futureuser interfaces to show the “price update” of service 22 as either“pending” or “approved.” In some implementations, the approval box 512may not be present on notification 500 or shown as not selectable (e.g.,greyed-out) on notification 500 when a user logged into service costprovider 102 is identified as not having administrative privileges.

In some implementations, the price approval module 228 recognizes theuser selected to approve the new price for a particular service. Inresponse, the price approval module 228 may provide an indication of thenew price to the communication module 214 or other module. Thecommunication module 214 may provide the approved new price for theparticular service to another portion of the service cost provider 102such that the user of the service cost provider 102 may immediatelybegin charging the new price for the particular service.

FIG. 6 illustrates another example user interface 600 generated by theinterface module 208 of the service cost provider 102. Interface 600 maybe provided when the user selects the administration box 602. In someimplementations, upon selection of the administration box 602, theinterface module 218 may provide an indication of the selection by, forexample, highlighting box 602. In some implementations, administrationbox 602 may only be presented as a selection option on interface 600when the user logged into the system is determined to haveadministrative privileges.

Interface 600 further illustrates that, under the administrationfunction and upon selection of the edit tab 604 associated with service22, a service code detail box 606 may be presented on the interface 600.In other implementations, the service code detail box 606 may bepresented as a separate user interface.

As mentioned above, the service code details box 606 may include anyeditable information associated with the particular service code, inthis case service 22. For instance, where the service cost provider isconfigured for a testing business as described above, the service codedetails may include a department within the business tasked to performthe service (e.g., chemistry, immunology, hematology, cytogenetics,molecular, virology, coagulation, toxicology, etc), an instrument orinstruments used to perform the service, a testing method to perform theservice, a number of calibrations per timeframe (e.g., weekly, daily,etc), a number of repeat services per timeframe (e.g., weekly, daily,etc), a number of days per week the service is to be performed, a numberof services bill per timeframe, a medical billing code associated withthe service, a number of control test run per timeframe, a number ofdilutions per timeframe, the cost variation limit, a cost reviewinterval, an average number of minutes per service, a date of the mostprevious price update, a list of suppliers who supply the materials toperform the service, an average total material cost per service, and anaverage total labor cost per service.

In some implementations, the service code details box 606 may alsoinclude a location for a user to add notes. The note may be saved forother user when the service code detail box 606 is provided.

In some implementations, the items shown within the service code detailsbox 606 may be changed by the user. In some implementations, the usermay select an item shown in the service code details box 606 to accessfurther information regarding the selected item.

In some implementations, the editable information within the servicecost details box 606 may alter how the service cost provider 102determines the current total cost of a particular service. For instance,a user may activate or deactivate one or more machines configured toperform the service. For instance, the user may activate a secondmachine to begin performing a particular service where a demand for theservice has suddenly increased. In some implementations, the user mayalter an order of service priority for instrument configured to performa particular service. For instance, a user may switch from a firstmachine to a second machine where the first machine is experiencingdowntime or a separate shift in service priority.

As mentioned above with regard to FIG. 5, the user may also alter thecost variation limit needed to trigger a cost change notification in theservice code details box 606. In some implementations, the service codedetails box 606 may allow the user to access details associated withmaterial suppliers. For instance, the user may determine for eachmaterial needed to perform the service who are the currently availablesupplier and what price the currently available suppliers are chargingfor the particular material. Furthermore, in some implementations, theservice cost provider 102 may allow the user to select a preferentialmaterial supplier for each material. The preference may be based oncost, delivery time, quality, bulk delivery, among others.

Illustrative Operations

FIG. 7 is a flow diagram of illustrative process for implementing thetechniques described above of determining a current total cost of aservice. The processes are illustrated as a collection of blocks in alogical flow graph, which represent a sequence of operations that can beimplemented in hardware, software, or a combination thereof. In thecontext of software, the blocks represent computer-executableinstructions stored on one or more computer-readable storage media that,when executed by one or more processors, perform the recited operations.Generally, computer-executable instructions include routines, programs,objects, components, data structures, and the like that performparticular functions or implement particular abstract data types. Theorder in which the operations are described is not intended to beconstrued as a limitation, and any number of the described blocks can becombined in any order and/or in parallel to implement the processes.Furthermore, the processes are described with reference to theenvironment 100 and may be performed by the computing architecture 200.Of course, the processes may be performed in other similar and/ordifferent environments.

At 702, first data associated with individual labor costs of a servicemay be received from a first data source. For instance, the dataacquisition module 210 may access or receive labor cost data 114 fromthe data sources 104.

At 704, second data associated with individual material costs of theservice may be received from a second data source. For instance, thedata acquisition module 210 may access or receive material cost data1116 from the data sources 104.

At 706, a total labor cost of the service may be determined based atleast in part on the first data. For instance, the cost determinationmodule 212 may determine the total labor cost to account for all thelabor costs associated with the service based on the labor cost data 114received by the data acquisition module 210.

At 708, a total material cost of the service may be determined based atleast in part on the second data. For instance, the cost determinationmodule 212 may determine the total material cost to account for all theconsumable material costs associated with the service based on the laborcost data 116 received by the data acquisition module 210.

At 710, a total cost of the service may be determined based at least inpart on the total labor coast and the total material cost. For instance,the cost determination module 212 may add the total labor cost and thetotal material cost to determine the total cost of the service.

At 712, a difference between the total cost of the service and apervious total cost of the service may be determined. For instance, thecost change module 224 may access the previous cost datastore 218 toretrieve a most recent previous cast of the service. The cost changemodule 224 may compare the total cost determined by the costdetermination module 212 and the previous cost from the previous costdatastore 218 to determine a cost difference.

At 714, a user interface may be presented to notify that the total ofthe service is different from the previous total cost. For instance, thenotification module 226 may generate a notification interface to displaythe cost difference determined by the cost change module 224.

At 716, an indication to update a price of the service based at least onthe difference between the total cost of the service and the previoustotal cost of the service. For instance, the price approval module 228may receive an indication on the notification interface provided by thenotification module 226 to set a new price for the service based atleast on the cost difference determined by the cost change module 224 orthe determined total cost of the service.

CONCLUSION

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described. Rather,the specific features and acts are disclosed as example forms ofimplementing the claims.

What is claimed is:
 1. A system for determining a current total cost ofa service, the system comprising: one or more processors; one or morecomputer-readable media storing computer-executable instructions that,when executed by the one or more processors, cause the one or moreprocessors to perform acts comprising: receiving a request to determinethe current total cost of the service; accessing first data based atleast in part on the request, the first data associated with a currentmaterial cost of at least one consumable material associated with theservice; accessing second data based at least in part on the request,the second data associated with a current labor cost of with theservice; determining the current total cost of the service based atleast in part on the first data and the second data; determining that acost difference between the current total cost and a previous total costexceed a predetermined threshold; and causing presentation of a userinterface to notify that the cost difference exceeds the predeterminedthreshold.
 2. The system as recited in claim 1, wherein the currentmaterial cost comprises at least one of a current acquisition cost ofsupplies used to perform the service or a cost of an amount of suppliesused to calibrate instruments used to perform the service.
 3. The systemas recited in claim 1, the act further comprising: receiving, via theuser interface, a request to modify the current total cost of theservice based at least in part on the cost difference exceeding thepredetermined threshold; submitting the request to modify the currenttotal cost for approval; receiving an indication of approval of therequest to modify the current total cost; and updating the current totalcost of the service based at least in part on the cost differenceexceeding the predetermined threshold.
 4. The system as recited in claim1, the acts further comprise determining the current labor cost based atleast in part on an amount of time to complete a number of the servicesover a predetermined time, divided by the number of the servicescompleted over the predetermined time.
 5. The system as recited in claim1, wherein the user interface includes at least one of: a description ofthe service; an approved total cost of the service; a percentageincrease of the current total cost of the service over a previous totalcost of the service; a percentage decrease of the current total cost ofthe service over a previous total cost of the service; a cost of theservice over a predetermined period of time; an amount of time since theprevious total cost of the service was determined; or a currentinventory level of at least one consumable material associated with theservice.
 6. The system as recited in claim 1, the acts furthercomprising: determining third data, the third data associated with anumber of services previously performed over a predetermined period oftime; and wherein determining the current total cost of the service isbased at least in part on the first data, the second data, and the thirddata.
 7. The system as recited in claim 1, the acts further comprising:communicating with one or more instruments associated with the serviceto: cause at least one of the one or more instruments to become activebased at least in part on the current total cost exceeding thepredetermined threshold; or cause at least one of the one or moreinstruments to become inactive based at least in part on the currenttotal cost exceeding the predetermined threshold.
 8. One or morenon-transitory computer-readable media storing computer-executableinstructions that, when executed, cause one or more processors toperform acts comprising: collecting data from one or more data sources,the data associated with at least one of (i) a material cost associatedwith a first service and a second service over a predetermined period oftime, (ii) a labor cost associated the first service and the secondservice over the predetermined period of time, or (iii) a number of thefirst service and the second service completed over the predeterminedperiod of time; determining, for each of the first service and thesecond service, a total average cost of the respective service over thepredetermined period of time based at least in part on the data;determining a first change in the total average cost of the firstservice over the predetermined period of time compared to a previousfirst total average cost of the first service over a previouspredetermined period of time; determining a second change in the totalaverage cost of the second service over the predetermined period of timecompared to a previous second total average cost of the second serviceover the previous predetermined period of time; causing display of thetotal average cost of the first service and the second services on auser interface; and causing display of the first change and the secondchange on the user interface.
 9. One or more non-transitory computerreadable media as recited in claim 8, the act further comprising:determining that the first change exceeds a predetermined threshold;causing presentation of an alert notification on the user interfacebased at least in part on the first change exceeding the predeterminedthreshold; and receiving a request to modify a current cost of the firstservice based at least in part on the first change exceeding thepredetermined threshold.
 10. One or more non-transitory computerreadable media as recited in claim 8, the act further comprising:determining that the second change exceeds a predetermined threshold;causing presentation of an alert notification on the user interfacebased at least in part on the second change exceeding the predeterminedthreshold; and receiving a request to modify a current cost of thesecond service based at least in part on the second change exceeding thepredetermined threshold.
 11. One or more non-transitory computerreadable media as recited in claim 8, the act further comprising:determining that at least one of the first change or the second changeexceeds a predetermined threshold; causing presentation of an alertnotification on the user interface based at least in part on whether thefirst change or the second change exceeds the predetermined threshold;and receiving a request to modify a current cost of the first service orthe second service based at least in part on whether the first change orthe second change exceeds the predetermined threshold.
 12. One or morenon-transitory computer readable media as recited in claim 8, whereinthe data is further associated with instrument costs associated with oneor more instruments used to complete the first service and the secondservice over the predetermined period of time.
 13. One or morenon-transitory computer readable media as recited in claim 8, whereinthe predetermined period of time is seven days.
 14. One or morenon-transitory computer readable media as recited in claim 8, whereinthe data is associated with the material cost associated with the firstservice and the second service, and the data accounts for material wastein completing the first service and the second service.
 15. Acomputer-implemented method of adjusting a total cost of a service, themethod comprising: under control of one or more computer systemsconfigured with executable instructions, receiving first data from afirst data source, the first data indicating labor costs of the service;receiving second data from a second data source, the second dataindicating material costs of the service; determining a total labor costof the service based at least on the first data; determine a totalmaterial cost of the service based at least on the second data;determining the total cost of the service based at least in part on thetotal labor cost and the total material cost; determining that the totalcost of the service is different than a previous total cost of theservice by a predetermined amount; causing presentation of a userinterface to notify that the total cost of the service is different thanthe previous total cost by the predetermined amount; and receiving anindication, via the user interface, to update a price of the service.16. The method as recited in claim 15, further comprising: sendinginstructions to one or more computing devices to at least one of: orderone or more materials for performing the service; cause one or moreinstruments associated with the service to become active to perform theservice; or cause one or more instruments associated with the service tobecome inactive to cease performance of the service.
 17. The method asrecited in claim 15, wherein the predetermined amount is a percentagedifference or a numerical difference.
 18. The method as recited in claim15, wherein causing presentation of the user interface includes sendinga link by at least one of an email, a short message service (SMS) or amultimedia message service (MMS).
 19. The method as recited in claim 15,further comprising: receiving user input regarding the labor costs orthe material costs; and wherein determining the total cost of theservice is based at least in part on the user input.
 20. The method asrecited in claim 15, further comprising: determining the previous totalcost of the service based at least in part on a number of servicespreviously ordered over a predetermined period of time.